home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1995 November
/
EnigmA AMIGA RUN 02 (1995)(G.R. Edizioni)(IT)[!][issue 1995-11][Skylink CD].iso
/
earcd
/
program
/
misc
/
m2pica.lha
/
M2Pica
/
Txt
/
vilintuisupD.def
< prev
next >
Wrap
Text File
|
1995-08-21
|
7KB
|
239 lines
(*******************************************************************************
: Program. VilIntuiSupD.def
: Author. Carsten Wartmann (Crazy Video)
: Address. Wutzkyallee 83, 12353 Berlin
: Phone. 030/6614776
: E-Mail C.Wartmann@GANDALF.berlinet.de (bevorzugt)
: E-Mail Carsten_Wartmann@tfh-berlin.de
: Version. 1.0
: Date. 21.08.1995 (16.Nov.1994)
: Copyright. Freeware
: Language. Modula-2
: Compiler. M2Amiga V4.3d
: Contents. Macht die VilIntuiSup.library für MODULA-2 (M2Amiga)
: Contents. Programmierer nutzbar.
: Contents. Enthält Die Definitionen der Tags, Const. etc. für
: Contents. die VilIntuiSup.library
*******************************************************************************)
DEFINITION MODULE VilIntuiSupD ;
FROM ExecD IMPORT Node ;
FROM IntuitionD IMPORT ScreenPtr ;
FROM UtilityD IMPORT tagUser ;
FROM SYSTEM IMPORT ADDRESS,BYTE ;
IMPORT R;
CONST tavisErrOk = 0 ;
tavisErrNoMem = 1 ;
tavisErrModeNotAvailable = 2 ;
tavisErrDimToBig = 3 ;
tavisErrDimToDepth = 4 ;
tavisErrDoubleBufToBig = 5 ;
tavisErrCantOpenScreen = 6 ;
InvalidID = 0FFFFFFFFH ;
VilZero = 000H ;
VilOne = 00EH ;
VilScrCopy = 00DH ;
VilNotScrCopy = 0D0H ;
VilScrAnd = 005H ;
VilNotScrAnd = 050H ;
VilScrPaint = 06DH ;
VilMergePaint = 0D6H ;
VilScrInvert = 059H ;
VilNotScrInvert = 095H ;
VilScrErase = 009H ;
VilNotScrErase = 090H ;
VilScrOrNot = 0ADH ;
VilNotScrOrNot = 0DAH ;
VilDstInvert = 00BH ;
VilModeNameLen = 40 ;
TYPE Dimension = RECORD (* für VillageOpenScreen, sollte nicht *)
ViewModeID : LONGCARD ; (* mehr benutzt werden . *)
width : CARDINAL ;
height : CARDINAL ;
depth : CARDINAL ;
END ;
DimensionPtr = POINTER TO Dimension ;
VilCustomModeNode = RECORD
node : Node ;
text : ARRAY [0..VilModeNameLen] OF CHAR ;
displayID : LONGCARD ;
width : CARDINAL ;
height : CARDINAL ;
depth : CARDINAL ;
END ;
VilCustomModeNodePtr = POINTER TO VilCustomModeNode ;
VilCopyRecord = RECORD
scrAdr : ADDRESS ;
dstAdr : ADDRESS ;
scrPitch : CARDINAL ;
dstPitch : CARDINAL ;
width : CARDINAL ;
height : CARDINAL ;
rop : LONGCARD ;
END ;
VilCopyRecordPtr = POINTER TO VilCopyRecord ;
VilFillRecord = RECORD
dstAdr : ADDRESS ;
dstPitch : CARDINAL ;
width : CARDINAL ;
height : CARDINAL ;
color : LONGINT ;
END ;
VilFillRecordPtr = POINTER TO VilFillRecord ;
TavisTags=(tavisDummy:=tagUser+4710,
tavisMinDepth,
tavisMaxDepth,
tavisMinHeight,
tavisMaxHeight,
tavisMinWidth,
tavisMaxWidth,
tavisWindowTitle,
tavisListview,
tavisOkGadget,
tavisCancelGadget,
tavisHelpText,
tavisAboutText,
tavisNoticeText,
tavisChooseText,
tavisMenuQuit,
tavisMenuHelp,
tavisMenuAbout,
tavisMenuProject,
tavisObsolete1,
tavisObsolete2,
tavisCustomList,
tavisObsolete3,
tavisObsolete4,
tavisObsolete5,
tavisObsolete6,
tavisObsolete7,
tavisObsolete8,
tavisObsolete9,
tavisObsolete10,
tavisObsolete11,
tavisScreenHeight,
tavisScreenWidth,
tavisScreenDepth,
tavisScreenModeID,
tavisBestModeID,
tavisOpenBehind,
tavisAutoscroll,
tavisAllowFallback,
tavisAdditionalMem,
tavisErrorCode,
tavisDoubleBuffer,
tavisDMStruct) ;
ScreenDataTags=(sdDummy:=tagUser+4710,
sdScreenDepth,
sdScreenMemSize,
sdCardMemSize,
sdCardSegmented) ;
(* Support *)
(* Setze PP für 68000er *)
PROCEDURE SetPackedPixel(scr{R.A0} : ScreenPtr ; x{R.D2},y{R.D3} : CARDINAL ;
color{R.D4} : CARDINAL) ;
(* Setze PP für 68020er aufwärts *)
(* Wird voraussichtlich in der nächsten Version nicht mehr existieren ! *)
PROCEDURE SetPackedPixelO(scr{R.A0} : ScreenPtr ; x{R.D2},y{R.D3} : CARDINAL ;
color{R.D4} : CARDINAL) ;
(* PP in MODULA-2 implementiert für Vergleichszwecke *)
(* Wird voraussichtlich in der nächsten Version nicht mehr existieren ! *)
PROCEDURE SetPPM(scr : ScreenPtr ; x,y : CARDINAL ; color : SHORTCARD) ;
(* Setze TrueColorPixel *)
PROCEDURE SetTrueColorPixel(scr{R.A0} : ScreenPtr ; x{R.D2},y{R.D3} : CARDINAL ;
r{R.D4},g{R.D5},b{R.D6} : CARDINAL) ;
(* Setze 15(6)BitPixel *)
PROCEDURE Set15BitPixel(scr{R.A0} : ScreenPtr ; x{R.D2},y{R.D3} : CARDINAL ;
r{R.D4},g{R.D5},b{R.D6} : CARDINAL) ;
PROCEDURE Set16BitPixel(scr{R.A0} : ScreenPtr ; x{R.D2},y{R.D3} : CARDINAL ;
r{R.D4},g{R.D5},b{R.D6} : CARDINAL) ;
(* Linienroutinen *)
(* Schnell aber ohne jeglich Sicherheitsabrage,
Guru ruft bei einer Länge von Null !!!!!!!!!! *)
PROCEDURE LinePackedO(scr{R.A0} : ScreenPtr ; x1{R.D5},y1{R.D6},
x2{R.D2},y2{R.D3},color{R.D4} : LONGINT) ;
(* In Assembler aber mit Sicherheitsabfrage *)
PROCEDURE LinePacked(scr{R.A0} : ScreenPtr ; x1{R.D5},y1{R.D6},
x2{R.D2},y2{R.D3},color{R.D4} : LONGINT) ;
(* In Modula-2 implementiert. Zu Vergleichszwecken *)
(* Wird voraussichtlich in der nächsten Version nicht mehr existieren ! *)
PROCEDURE LinePackedM(scr{R.A0} : ScreenPtr ; x1{R.D2},y1{R.D3},x2,y2,
color{R.D4} : INTEGER) ;
PROCEDURE LineTrueColor(scr : ScreenPtr ; x1,y1,x2,y2,r,g,b : INTEGER) ;
PROCEDURE Line15Bit(scr : ScreenPtr ; x1,y1,x2,y2,r,g,b : INTEGER) ;
PROCEDURE Line16Bit(scr : ScreenPtr ; x1,y1,x2,y2,r,g,b : INTEGER) ;
(* Entwickler Testroutine ;-) *)
PROCEDURE TstL(scr{R.A0} : ScreenPtr ; a{R.D3} : LONGINT) ;
(* Hi-Color Support*)
PROCEDURE Get15FromRGB(r{R.D4},g{R.D5},b{R.D6} : CARDINAL) : CARDINAL ;
PROCEDURE Get16FromRGB(r{R.D4},g{R.D5},b{R.D6} : CARDINAL) : CARDINAL ;
PROCEDURE Kreis(scr : ScreenPtr ; x,y,r,col : INTEGER) ;
PROCEDURE ClearScreen(scr : ScreenPtr) ;
PROCEDURE ClearBuf(scr : ScreenPtr ; bufadr : ADDRESS) ;
END VilIntuiSupD .